
package TCPTools;

import java.util.Date;

/**
 * La classe Vitesse permet de calculer la vitesse d'un transfert de fichier 
 *
 * @author      Frank Djomo
 * @author      Christelle SIAGO HAPPI
 * @author      djomopoueme@gmail.com
 * @author      christelle.siagohappi@gmail.com
 * @version     1.0
 */
public class Vitesse {
    
    private long timeNow, deltaTime ,vitesse;
    private int  octectTraite ;

    /**
    *  Constructeur 
    *  Initialise les attibuts à zero
    */
    public Vitesse()
    {
        timeNow =0 ;
        deltaTime =0;
        vitesse =0;
        octectTraite=0;
    }

    /**
    * @return vitesse de transfert
    */
    public long getVitesseValue()
    {
        return vitesse ;
    }

    /**
    * @return vitesse de transfert
    */
    public long getVitesse(long timeDebut,int octetTraite){
        calculerVitesse(timeDebut,octetTraite);
        return vitesse ;
    }

    /**
    * @return octectTraite 
    */
    public int getOctectTraite()
    {
        return octectTraite;
    }
    /**
    * Calcule la vitesse d'un transfert
    * @param timeDebut temps debut du transfert
    * @return octetLu  octect traité pendant le transfert
    */
    private void calculerVitesse(long timeDebut,int octetTraite)
    {
        this.octectTraite = octetTraite;
        timeNow = new Date().getTime();
        deltaTime = (timeNow - timeDebut)/1000;
        if(deltaTime ==0) deltaTime = 1;
        vitesse = octetTraite/deltaTime;

    }
}
